package com.levi.mall.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.github.pagehelper.PageInfo;
import com.levi.pojo.Order;
import com.levi.vo.OrderVo;
import com.levi.vo.ResponseVo;

/**
 * @author shentong
 * @since 2022/4/5 11:42 AM
 */
public interface OrderService extends IService<Order> {
    /**
     * 添加订单
     * @param uid
     * @param shippingId
     * @return
     */
    ResponseVo<OrderVo> create(Integer uid, Integer shippingId);

    /**
     * 订单列表
     * @param uid
     * @param pageNum
     * @param pageSize
     * @return
     */
    ResponseVo<PageInfo<OrderVo>> list(Integer uid,Integer pageNum,Integer pageSize);

    /**
     * 订单详情
     * @param uid
     * @param orderNo
     * @return
     */
    ResponseVo<OrderVo> detail(Integer uid, Long orderNo);

    /**
     * 取消订单
     * @param uid
     * @param orderNo
     * @return
     */
    ResponseVo cancel(Integer uid, Long orderNo);


    void paid(Long orderNo);
}
